ArchivingPanel = Ext.extend(Ext.Panel, {
	closable : true,
	title : "土地档案存档",
	constructor : function(config) {
		this.messageBtn = new Ext.Button({
			enableToggle : false,
			text : "<font color=red >消息提示按钮</font>"
		})
		this.archivingBtn = new Ext.Button({
			text : "当前档案存档",
			disabled : true,
			handler : this.archiving,
			pressed : true,
			scope : this
		});
		this.areaStore = new Ext.data.JsonStore({
			autoLoad : true,
			id : "id",
			url : 'area.action',
			baseParams : {
				cmd : 'read',
				from : 'notarchivedarea',
				limit : 100
			},
			root : "data",
			totalProperty : "rowCount",
			remoteSort : false,
			fields : ["id", "name"],
			listeners : {
				load : function(store, records, options) {
//					store.insert(0, new Ext.data.Record({
//						'id' : '-1',
//						'name' : '请选择行政村'
//					}, '-1'));
					this.areaFilter.setValue('请选择要归档的行政村');
				},
				scope : this
			}
		});
		this.areaFilter = new Ext.form.ComboBox({ // select
			fieldLabel : 'select',
			editable : true,
			triggerAction : 'all',
			valueField : 'id',
			displayField : 'name',
			mode : 'local',
			store : this.areaStore
		});
		Ext.apply(config, {
			tbar : ['', this.messageBtn, '-', '请选择要归档行政村：', this.areaFilter, '', this.archivingBtn, {
				text : "刷新当前信息",
				disabled : false,
				handler : this.init,
				pressed : true,
				scope : this				
			},new Ext.Toolbar.Fill(), ' '],
			buttonAlign : 'center',
			html : '',
			height : '200'
		});
		ArchivingPanel.superclass.constructor.call(this, config);
		this.init();
	},
	init : function() {
		Ext.Ajax.request({
			url : 'canarchiving.action',
			params : {
				'cmd' : (id ? "update" : "create"),
				'jsondata' : ''
			},
			method : 'POST',
			success : function(response) {
				var r = Ext.util.JSON.decode(response.responseText);
				if (!r.success) {
					Ext.Msg.alert("提示信息", "失败，由以下原因所致：<br/>" + (r.errors ? r.errors : "未知原因"));
				} else {
					if (r.data.enabled == "true") {
						this.messageBtn.setText(String.format("<font color=blue size=2 weight=bold;>{0}年设置的归档时间为{1}至{2}，今天是{3}，处于设置的归档时间内,请及时进行归档操作!</font>", r.data.year, r.data.startTime, r.data.endTime, r.data.today));
						this.archivingBtn.enable();
						this.areaFilter.enable();
					} else {
						if (r.data.startTime) {
							this.messageBtn.setText(String.format("<font color=red size=2 weight=bold;>{0}年设置的归档时间为{1}至{2}，今天是{3}，不在设置的归档时间内，不能进行归档操作!</font>", r.data.year, r.data.startTime, r.data.endTime, r.data.today));
						} else {
							this.messageBtn.setText(String.format("<font color=red size=2 weight=bold;>{0}年没有设置归档时间，今天是{1}，目前不能进行归档操作!</font>", r.data.year, r.data.today));
						}
						this.archivingBtn.disable();
						this.areaFilter.disable();
					}
				}
			},
			failure : function(Optional) {
				Ext.Msg.alert("提示信息", "连接服务器失败!");
			},
			scope : this
		});
	},
	archiving : function() {
		var areaid = this.areaFilter.getValue();
		//alert(areaid);
		if (areaid == '-1'||areaid == '请选择要归档的行政村') {
			Ext.Msg.alert("提示信息", "请选择要归档的地区");
			return false;
		}
		var isEnded='false';
		if((this.areaStore.getTotalCount())==1){
			isEnded='true';
		}
		Ext.Msg.confirm("提示信息", "确定要进行归档吗，要慎重进行归档操作！", function(btn) {
			if (btn != 'yes') {
				return false;
			}
			Ext.Ajax.request({
				url : 'doarchiving.action',
				params : {
					'areaid' : areaid,
					'isEnded':isEnded
				},
				method : 'POST',
				success : function(response) {
					var r = Ext.util.JSON.decode(response.responseText);
					if (!r.success) {
						Ext.Msg.alert("提示信息", "失败，由以下原因所致：<br/>" + (r.errors ? r.errors : "未知原因"));
					} else {
						this.areaStore.reload();
					}
				},
				failure : function(Optional) {
					Ext.Msg.alert("提示信息", "连接服务器失败!");
				},
				scope : this
			});
		}, this);
	}
});